ã¿ã€ãã»ãŒããªã€ã³ã¿ãŒãããã€ã³ãã©ã¹ãã©ã¯ãã£ã®éèŠãªåŽé¢ãæãäžããã°ããŒãã«ãããã¯ãŒã¯å šäœã®ã»ãã¥ãªãã£ãä¿¡é Œæ§ãã¹ã±ãŒã©ããªãã£ã匷åããããã®æ¥ç¶ã¿ã€ãã®å®è£ ãæ¢ããŸãã
ã¿ã€ãã»ãŒããªã€ã³ã¿ãŒãããã€ã³ãã©ïŒæ¥ç¶ã¿ã€ãã®å®è£
çµ¶ãéãªãé²åããããžã¿ã«ç°å¢ã«ãããŠãã€ã³ã¿ãŒãããã¯ã°ããŒãã«ãªã³ãã¥ãã±ãŒã·ã§ã³ãåååŒããã®ä»ç¡æ°ã®æŽ»åã®ããã¯ããŒã³ãšããŠæ©èœããŠããŸãããã®å·šå€§ãªãããã¯ãŒã¯ãæ¯ããåºç€ãšãªãã€ã³ãã©ã¹ãã©ã¯ãã£ã¯ãè€éãã€å€é¢çã§ãããã®ããã°æçš¿ã§ã¯ãã¿ã€ãã»ãŒããªã€ã³ã¿ãŒãããã€ã³ãã©ã®éèŠãªæŠå¿µãæ¢ããç¹ã«æ¥ç¶ã¿ã€ãã®å®è£ ãšãã°ããŒãã«ã€ã³ã¿ãŒãããå šäœã®ã»ãã¥ãªãã£ãä¿¡é Œæ§ãã¹ã±ãŒã©ããªãã£ãžã®åœ±é¿ã«çŠç¹ãåœãŠãŸãã
ã€ã³ã¿ãŒãããã€ã³ãã©ã«ãããã¿ã€ãã»ãŒãã®éèŠæ§
ã¿ã€ãã»ãŒãã¯ãœãããŠã§ã¢ãšã³ãžãã¢ãªã³ã°ã«ãããåºæ¬çãªååã§ãããããŒã¿ã®æŽåæ§ã確ä¿ãããšã©ãŒã®å¯èœæ§ãæžãããŸããã€ã³ã¿ãŒãããã€ã³ãã©ã«é©çšãããå Žåãã¿ã€ãã»ãŒããšã¯ããããã³ã«ããã±ãããæ§æãªã©ãããŸããŸãªãããã¯ãŒã¯ã³ã³ããŒãã³ãã®ããŒã¿åãå³å¯ã«å®çŸ©ããé©çšããããšãæå³ããŸãããã®ã¢ãããŒãã¯ã次ã®ããšã«åœ¹ç«ã¡ãŸãïŒ
- ãšã©ãŒã®é²æ¢ïŒã³ã³ãã€ã«æãŸãã¯å®è¡æã®ã¿ã€ããã§ãã¯ã«ããããšã©ãŒããããã¯ãŒã¯éçšã«åœ±é¿ãäžããåã«æ©æã«æ€åºãããŸããããã¯ããšã©ãŒãè¿ éã«äŒæããå¯èœæ§ã®ãã忣ç°å¢ã§ã¯ç¹ã«éèŠã§ãã
 - ä¿¡é Œæ§ã®åäžïŒããŒã¿ãäºæãããã¿ã€ãã«æºæ ããŠããããšãä¿èšŒããããšã«ãããã¿ã€ãã»ãŒãã¯äºæããªãåäœã®ãªã¹ã¯ã軜æžããããä¿¡é Œæ§ã®é«ããããã¯ãŒã¯ã«ã€ãªãããŸãã
 - ã»ãã¥ãªãã£ã®åŒ·åïŒã¿ã€ãã»ãŒãã¯ãæªæã®ããã¢ã¯ã¿ãŒãã·ã¹ãã ã«ç¡å¹ãªããŒã¿ãæ³šå ¥ããã®ãé²ãããšã«ããããããã¡ãªãŒããŒãããŒãã€ã³ãžã§ã¯ã·ã§ã³æ»æãããã³ãã®ä»ã®ã»ãã¥ãªãã£è åšã«é¢é£ããè匱æ§ã軜æžã§ããŸãã
 - ã¹ã±ãŒã©ããªãã£ã®ä¿é²ïŒã¿ã€ãã»ãŒããªã·ã¹ãã ã¯ããã®åäœãäºæž¬å¯èœã§ãããããå€ãã®å Žåãã¹ã±ãŒãªã³ã°ã容æã§ãããããå¹ççãªãªãœãŒã¹ã®å²ãåœãŠãšç®¡çãå¯èœã§ãã
 - ãããã°ãšã¡ã³ããã³ã¹ã®ç°¡çŽ åïŒæç¢ºã«å®çŸ©ãããã¿ã€ãã䜿çšãããšãéçºè ã¯ã³ãŒãããŒã¹ãããç°¡åã«çè§£ããŠãããã°ã§ãããããåé¡ã®è§£æ±ºãè¿ éã«ãªããã¡ã³ããã³ã¹ã容æã«ãªããŸãã
 
æ¥ç¶ã¿ã€ãïŒã¿ã€ãã»ãŒããªãããã¯ãŒã¯ã®æ§æèŠçŽ
æ¥ç¶ã¿ã€ãã¯ãããŸããŸãªãããã¯ãŒã¯ã³ã³ããŒãã³ããã©ã®ããã«çžäºäœçšããããŒã¿ã亀æããããå®çŸ©ããåºæ¬çãªæ§æèŠçŽ ã§ããã¿ã€ãã»ãŒããªæ¹æ³ã§ãããã®ã¿ã€ããå®è£ ããã«ã¯ãæ£ç¢ºãªããŒã¿æ§é ãã€ã³ã¿ãŒãã§ãŒã¹ãããã³æ€èšŒã«ãŒã«ãå®çŸ©ããå¿ èŠããããŸããäžè¬çãªæ¥ç¶ã¿ã€ãã«ã¯ã次ã®ãã®ããããŸãïŒ
- IPã¢ãã¬ã¹ïŒIPã¢ãã¬ã¹ïŒIPv4ãIPv6ãªã©ïŒã®ã¿ã€ããå®çŸ©ãããšããããã¯ãŒã¯å šäœã§æå¹ãªã¢ãã¬ã¹ã®ã¿ã䜿çšãããããã«ãªããŸããããã«ãããã¢ãã¬ã¹ã®ç«¶åãé²ããã«ãŒãã£ã³ã°å¹çãåäžãããããšãã§ããŸãã
 - ããŒãïŒããŒãã¯ãããã€ã¹äžã§å®è¡ãããŠããç¹å®ã®ã¢ããªã±ãŒã·ã§ã³ãŸãã¯ãµãŒãã¹ãèå¥ããŸããã¿ã€ãã»ãŒããªããŒãå®çŸ©ã«ãããäžé©åãªããŒãå²ãåœãŠãé²ããæ©å¯ãµãŒãã¹ãžã®ã¢ã¯ã»ã¹ãå¶éããããšã§ãããã¯ãŒã¯ã»ãã¥ãªãã£ãåäžãããŸãã
 - ãããã³ã«ïŒTCPãUDPãHTTPãªã©ã®ãããã³ã«ã¯ãå³å¯ãªããŒã¿æ§é ãšã«ãŒã«ã§å®çŸ©ãããŠããŸããã¿ã€ãã»ãŒãã«ããããã±ããããããã³ã«ä»æ§ã«æºæ ãããããã³ã«éåãé²ããçžäºéçšæ§ãåäžãããŸãã
 - ãã±ãã圢åŒïŒæ£ç¢ºãªããŒã¿åãšæ€èšŒã«ãŒã«ã䜿çšããŠãã±ãã圢åŒãå®çŸ©ããããšã¯ãå¹ççã§å®å šãªããŒã¿äŒéã«äžå¯æ¬ ã§ããããã«ããããã±ããã®è§£æãšæäœã«é¢é£ãããšã©ãŒãé²ããããŒã¿ã®ç Žæãæªæã®ããæ»æã®ãªã¹ã¯ã軜æžããŸãã
 - ãããã¯ãŒã¯æ§æïŒã¿ã€ãã»ãŒããªãããã¯ãŒã¯æ§æã«ãããããã€ã¹èšå®ïŒã«ãŒãã£ã³ã°ããŒãã«ããã¡ã€ã¢ãŠã©ãŒã«ã«ãŒã«ãªã©ïŒãé©çšãããåã«æå¹ã§ããããšãä¿èšŒãããŸããããã«ãããæ§æãã¹ãé²ãããããã¯ãŒã¯ã®å®å®æ§ãåäžãããŸãã
 
ã¿ã€ãã»ãŒããªæ¥ç¶ã¿ã€ãã®å®è£ ïŒå®è·µçãªã¢ãããŒã
ã¿ã€ãã»ãŒããªæ¥ç¶ã¿ã€ããå®è£ ããã«ã¯ãæ éãªèšç»ãšå®è¡ãå¿ èŠã§ããå®è·µçãªã¢ãããŒããæ¬¡ã«ç€ºããŸãïŒ
1. èšèšãšä»æ§
æåã®ã¹ãããã¯ãããŒã¿æ§é ãã€ã³ã¿ãŒãã§ãŒã¹ãå¶çŽãªã©ãæ¥ç¶ã¿ã€ããå®å šã«å®çŸ©ããããšã§ããããã«ã¯ã次ã®ãã®ãå«ãŸããŸãïŒ
- èŠä»¶ã®åéïŒãã¹ãŠã®ãããã¯ãŒã¯ã³ã³ããŒãã³ããšãããã®éä¿¡èŠä»¶ãç¹å®ããŸãã
 - ããŒã¿åå®çŸ©ïŒåã³ã³ããŒãã³ãã«é©åãªããŒã¿åïŒæŽæ°ãæååãåæåãæ§é äœãªã©ïŒã決å®ããŸãã
 - ã€ã³ã¿ãŒãã§ãŒã¹èšèšïŒããŸããŸãªã³ã³ããŒãã³ããã©ã®ããã«çžäºäœçšããããæå®ãããæç¢ºã§ç°¡æœãªã€ã³ã¿ãŒãã§ãŒã¹ãå®çŸ©ããŸãã
 - æ€èšŒã«ãŒã«ïŒããŒã¿ã®æŽåæ§ãä¿èšŒããããã®æ€èšŒã«ãŒã«ã確ç«ããŸãããããã®ã«ãŒã«ã¯ãåããŒã¿åã«èš±å¯ãããç¯å²ã圢åŒãããã³ãã®ä»ã®å¶çŽãæå®ããå¿ èŠããããŸãã
 
äŸïŒIPã¢ãã¬ã¹ã®å Žåãã¿ã€ãå®çŸ©ã§ã¯ããªã¯ãããïŒIPv4ã®å ŽåïŒãŸãã¯ãã£ã³ã¯ïŒIPv6ã®å ŽåïŒã®ãã£ãŒã«ããæã€æ§é äœãæå®ã§ããŸããæ€èšŒã«ãŒã«ã§ã¯ãåãªã¯ãããã0ã255ã®ç¯å²å ïŒIPv4ã®å ŽåïŒãããã³ã¢ãã¬ã¹ãæ£ãã圢åŒã«åŸã£ãŠããããšã確èªããŸãããããã¯ãŒã¯æ§æã®å Žåãèšèšã§ã¯ã垯åå¹ ã®ãããªQuality of ServiceïŒQoSïŒãã©ã¡ãŒã¿ãŒã«èš±å¯ãããç¯å²ãªã©ãåèšå®ã®æå¹ãªå€ãæå®ããŸãã
2. èšèªã®éžæãšããŒã«
ã¿ã€ãã»ãŒããªæ¥ç¶ã¿ã€ããå®è£ ããã«ã¯ãé©åãªããã°ã©ãã³ã°èšèªãšããŒã«ãéžæããããšãéèŠã§ããRustãGoãªã©ãäžéšã®èšèªã¯åŒ·åãªåã·ã¹ãã ã§èšèšãããŠãããã¿ã€ãã»ãŒãã匷å¶ãããããªã£ãŠããŸããC++ãªã©ã®ä»ã®èšèªã§ã¯ãã¿ã€ãã»ãŒããç¶æããããã«æ éãªã³ãŒãã£ã³ã°ãã©ã¯ãã£ã¹ãå¿ èŠã§ãã以äžãæ€èšããŠãã ããïŒ
- ããã°ã©ãã³ã°èšèªïŒåŒ·åãªåä»ãããµããŒãããåªãããšã©ãŒæ€åºæ©èœãæäŸããèšèªãéžæããŸããRustãGoããŸãã¯HaskellãScalaãªã©ã®å ç¢ãªåãã§ãã¯æ©èœãåããèšèªãæ€èšããŠãã ããã
 - ãã¬ãŒã ã¯ãŒã¯ãšã©ã€ãã©ãªïŒãããã¯ãŒã¯ããã°ã©ãã³ã°ã«ã¿ã€ãã»ãŒããªæœè±¡åãæäŸãããã¬ãŒã ã¯ãŒã¯ãšã©ã€ãã©ãªã䜿çšããŸãã
 - ãã¹ãããã³ãããã°ããŒã«ïŒã¿ã€ããšã©ãŒãèªåçã«ãã§ãã¯ãããããã°ã容æã«ããããŒã«ã䜿çšããŸãã
 
äŸïŒãããã¯ãŒã¯ãããã³ã«ã䜿çšããŠããå Žåã¯ããããã³ã«å®çŸ©ã«åºã¥ããŠãã±ããã®è§£æãšã·ãªã¢ã«åã®ããã®ã³ãŒããèªåçã«çæããã©ã€ãã©ãªã䜿çšã§ããŸãããããã¯ãŒã¯ããã€ã¹ã®æ§æã§ã¯ãé©çšããåã«æ§æãã©ã¡ãŒã¿ãŒãæ€èšŒãããã¬ãŒã ã¯ãŒã¯ã䜿çšã§ããŸãã
3. å®è£
å®è£ ãã§ãŒãºã§ã¯ãå®çŸ©ãããæ¥ç¶ã¿ã€ããšæ€èšŒã«ãŒã«ã«æºæ ããã³ãŒããèšè¿°ããŸããäž»ãªèæ ®äºé ã¯æ¬¡ã®ãšããã§ãïŒ
- ã³ãŒãçæïŒã¿ã€ãå®çŸ©ã«åºã¥ããŠããŒã¿ã®è§£æãã·ãªã¢ã«åãããã³æ€èšŒã®ããã®ã³ãŒããèªåçã«çæããããã«ãã³ãŒãçæããŒã«ã®äœ¿çšãæ€èšããŠãã ãããããã«ããããã¥ãŒãã³ãšã©ãŒã®ãªã¹ã¯ã軜æžãããå¹çãåäžããŸãã
 - ã¿ã€ããã§ãã¯ïŒãšã©ãŒãæ©æã«æ€åºããããã«ãã³ã³ãã€ã«æãŸãã¯å®è¡æã«å³å¯ãªã¿ã€ããã§ãã¯ãå®è£ ããŸãã
 - ãšã©ãŒåŠçïŒç¡å¹ãªããŒã¿ãŸãã¯äºæããªãã€ãã³ããé©åã«åŠçããããã®å ç¢ãªãšã©ãŒåŠçã¡ã«ããºã ãå®è£ ããŸããããã«ã¯ããããã°ãšåé¡è§£æ±ºã容æã«ããããã®ãã®ã³ã°ãšã¢ã©ãŒããå«ãŸããå¿ èŠããããŸãã
 - ã¢ãžã¥ãŒã«æ§ïŒä¿å®æ§ãšã¹ã±ãŒã©ããªãã£ãåäžãããããã«ãã¢ãžã¥ãŒã«æ¹åŒã§ã³ãŒããèšèšããŸãã
 
äŸïŒåä¿¡ãããã¯ãŒã¯ãã±ãããåŠçããå Žåãã³ãŒãã¯æåã«å®çŸ©ãããã¿ã€ã仿§ã«å¯ŸããŠãã±ããã®åœ¢åŒãšã³ã³ãã³ããæ€èšŒããå¿ èŠããããŸãããã±ãããç¡å¹ãªå Žåãã·ã¹ãã ã¯ãšã©ãŒããã°ã«èšé²ãããã±ãããç Žæ£ããå Žåã«ãã£ãŠã¯ãããã¯ãŒã¯ç®¡çè ã«èŠåããå¿ èŠããããŸãããã±ãããæå¹ãªå Žåãã³ãŒãã¯äºæãããã¿ã€ãã«æºæ ããŠããããšãèªèããŠããã±ãããå®å šã«åŠçã§ããŸãã
4. ãã¹ããšæ€èšŒ
å®è£ ãã¿ã€ãã»ãŒãã§ä¿¡é Œæ§ãé«ãããšãä¿èšŒããã«ã¯ã培åºçãªãã¹ããäžå¯æ¬ ã§ããããã«ã¯ã次ã®ãã®ãå«ãŸããŸãïŒ
- ãŠããããã¹ãïŒããŸããŸãªæ¡ä»¶äžã§åã ã®ã³ã³ããŒãã³ããšé¢æ°ãæåŸ ã©ããã«åäœããããšã確èªããããã«ããŠããããã¹ããèšè¿°ããŸãã
 - çµ±åãã¹ãïŒç°ãªãã³ã³ããŒãã³ãéã®çžäºäœçšãæ€èšŒããããã«ãçµ±åãã¹ãã宿œããŸãã
 - ã·ã¹ãã ãã¹ãïŒãããã¯ãŒã¯ã®å šäœçãªããã©ãŒãã³ã¹ãšå®å®æ§ãè©äŸ¡ããããã«ãã·ã¹ãã ãã¹ããå®è¡ããŸãã
 - ã¹ãã¬ã¹ãã¹ãïŒæœåšçãªããã«ããã¯ãšè匱æ§ãç¹å®ããããã«ãé«è² è·äžã§ã·ã¹ãã ããã¹ãããŸãã
 - ã»ãã¥ãªãã£ç£æ»ïŒæœåšçãªã»ãã¥ãªãã£è匱æ§ãç¹å®ããããã«ãã»ãã¥ãªãã£ç£æ»ã宿œããŸãã
 
äŸïŒãããã¯ãŒã¯æ§æç®¡çã·ã¹ãã ã®å ŽåããŠããããã¹ãã§ã¯ãããŸããŸãªæ§æãã©ã¡ãŒã¿ãŒã®æ€èšŒããžãã¯ã確èªã§ããŸããçµ±åãã¹ãã§ã¯ãã·ã¹ãã ãæ€èšŒæžã¿ã®æ§æããããã¯ãŒã¯ããã€ã¹ã«æ£ããé©çšããããšã確èªã§ããŸããã¹ãã¬ã¹ãã¹ãã§ã¯ã倿°ã®æ§æå€æŽãåæã«åŠçããã·ã¹ãã ã®èœåãè©äŸ¡ããŸããã»ãã¥ãªãã£ç£æ»ã§ã¯ãã·ã¹ãã ãã€ã³ãžã§ã¯ã·ã§ã³æ»æãŸãã¯ãã®ä»ã®åœ¢åŒã®æªæã®ããå ¥åã«å¯Ÿããå埩åãè©äŸ¡ããŸãã
5. å±éãšç£èŠ
ãã¹ããæåããããã¿ã€ãã»ãŒããªã€ã³ãã©ã¹ãã©ã¯ãã£ãå±éã§ããŸãããã®ä¿¡é Œæ§ãšããã©ãŒãã³ã¹ãç¶æããã«ã¯ãç¶ç¶çãªç£èŠãäžå¯æ¬ ã§ãã
- å±éæŠç¥ïŒäžæãæå°éã«æããããã®å ç¢ãªå±éæŠç¥ãéçºããŸããããã«ã¯ã段éçãªããŒã«ã¢ãŠãããã«ãŒ/ã°ãªãŒã³ãããã€ã¡ã³ãããŸãã¯ãã®ä»ã®ææ³ãå«ãŸããå ŽåããããŸãã
 - ç£èŠããŒã«ïŒãããã¯ãŒã¯é å»¶ããã±ããæå€±ããšã©ãŒçãªã©ã®äž»èŠãªã¡ããªãã¯ã远跡ããããã«ãç£èŠããŒã«ãå®è£ ããŸãã
 - ã¢ã©ãŒãã·ã¹ãã ïŒåé¡ãç°åžžãçºçããå Žåã«ç®¡çè ã«éç¥ããããã«ã¢ã©ãŒãã·ã¹ãã ãèšå®ããŸãã
 - 宿çãªæŽæ°ïŒã»ãã¥ãªãã£è匱æ§ã«å¯ŸåŠããæ¹åãåãå ¥ããããã«ããœãããŠã§ã¢ã宿çã«æŽæ°ããŸãã
 
äŸïŒãããã¯ãŒã¯ç£èŠããŒã«ã¯ãåä¿¡ããç¡å¹ãªãã±ããã®æ°ã远跡ã§ããŸããç¡å¹ãªãã±ããã®æ°ããããå€ãè¶ ããå Žåãã·ã¹ãã ã¯ç®¡çè ã«ã¢ã©ãŒããããªã¬ãŒããå¿ èŠããããŸãã宿çãªãœãããŠã§ã¢ã¢ããããŒãã«ã¯ããã±ããè§£æãŸãã¯ãããã³ã«åŠçã«é¢é£ããã»ãã¥ãªãã£è匱æ§ã«å¯ŸåŠããããã®ããããå«ãŸããŸããç¶ç¶çãªç£èŠãšã¡ã³ããã³ã¹ã«ãããã¿ã€ãã»ãŒããªã€ã³ãã©ã¹ãã©ã¯ãã£ã®å¯¿åœãšæå¹æ§ãä¿èšŒãããŸãã
ã¿ã€ãã»ãŒããªã€ã³ã¿ãŒãããã€ã³ãã©ã¹ãã©ã¯ãã£ã®å©ç¹
ã¿ã€ãã»ãŒããªæ¥ç¶ã¿ã€ããå®è£ ãããšãããã€ãã®å€§ããªå©ç¹ããããŸãã以äžãå«ã¿ãŸãïŒ
- ã»ãã¥ãªãã£ã®åŒ·åïŒããŒã¿æŽåæ§ã匷å¶ããæªæã®ããããŒã¿ã€ã³ãžã§ã¯ã·ã§ã³ãé²ãããšã«ãããã¿ã€ãã»ãŒãã¯ããŸããŸãªæ»æã«å¯Ÿãããããã¯ãŒã¯ã»ãã¥ãªãã£ã匷åããŸãã
 - ä¿¡é Œæ§ã®åäžïŒã¿ã€ãã»ãŒããªã·ã¹ãã ã¯ãšã©ãŒã«å¯Ÿããèæ§ãé«ããããä¿¡é Œæ§ã®é«ããããã¯ãŒã¯ã«ãªããŸããããã«ãããåæ¢ãæžå°ããããŠã³ã¿ã€ã ãççž®ãããŸããããã¯ãã°ããŒãã«ãããã¯ãŒã¯ã«ãšã£ãŠéåžžã«éèŠã§ãã
 - ã¹ã±ãŒã©ããªãã£ã®åäžïŒã¿ã€ãã»ãŒããªã·ã¹ãã ã¯ããã®åäœãäºæž¬å¯èœã§ãããããã¹ã±ãŒãªã³ã°ã容æã§ãããããå¹ççãªãªãœãŒã¹ã®å²ãåœãŠãšç®¡çãå¯èœã§ãã
 - éçºã³ã¹ãã®åæžïŒæ©æã®ãšã©ãŒæ€åºãšä¿å®æ§ã®åäžã«ãããéçºã³ã¹ããšæéãåæžãããŸãã
 - çžäºéçšæ§ã®åäžïŒã¿ã€ãã»ãŒããªã·ã¹ãã ã¯ãä»ã®ã·ã¹ãã ãšæ£ããçžäºéçšãããå¯èœæ§ãé«ãããããã¯ãŒã¯å šäœã®æ©èœãåäžããŸãã
 - ãããã°ãšã¡ã³ããã³ã¹ã®ç°¡çŽ åïŒæç¢ºã«å®çŸ©ãããã¿ã€ãã䜿çšãããšãéçºè ã¯ã³ãŒããããç°¡åã«çè§£ããŠãããã°ã§ãããããåé¡ã®è§£æ±ºãè¿ éã«ãªããã¡ã³ããã³ã¹ã容æã«ãªããŸãã
 - ã³ã³ãã©ã€ã¢ã³ã¹ïŒéèãå»çãªã©ãå€ãã®æ¥çã¯å³æ ŒãªèŠå¶ã®å¯Ÿè±¡ãšãªã£ãŠããŸããã¿ã€ãã»ãŒãã¯ãã³ã³ãã©ã€ã¢ã³ã¹ã®åãçµã¿ã«åœ¹ç«ã¡ãŸãã
 
ã¿ã€ãã»ãŒããªã€ã³ã¿ãŒãããã€ã³ãã©ã¹ãã©ã¯ãã£ã®å®è£ ã®èª²é¡
å©ç¹ã¯å€§ããã§ãããã¿ã€ãã»ãŒããªã€ã³ã¿ãŒãããã€ã³ãã©ã¹ãã©ã¯ãã£ãå®è£ ãããšãããã€ãã®èª²é¡ãçºçããŸãïŒ
- è€éãïŒã¿ã€ãã»ãŒããå®çŸ©ããŠé©çšãããšãéçºããã»ã¹ã«è€éããå ããå¯èœæ§ããããŸãã
 - éçºæéã®å¢å ïŒã¿ã€ãã»ãŒããªã·ã¹ãã ãèšèšããã³å®è£ ããã«ã¯ãå³å¯ã§ãªãã¢ãããŒããšæ¯èŒããŠãããå€ãã®éçºæéãå¿ èŠã«ãªãå ŽåããããŸãã
 - ããã©ãŒãã³ã¹ã®ãªãŒããŒãããïŒã¿ã€ããã§ãã¯ã¯ãããããªããã©ãŒãã³ã¹ã®ãªãŒããŒããããããããå¯èœæ§ããããŸãããä¿¡é Œæ§ãšã»ãã¥ãªãã£ã®èгç¹ããã®å©ç¹ã¯ããã®ã³ã¹ããäžåãããšããããããŸãã
 - çµ±åã®èª²é¡ïŒã¿ã€ãã»ãŒããªã·ã¹ãã ãã¬ã¬ã·ãŒã·ã¹ãã ãšçµ±åããããšã¯é£ããå ŽåããããŸãã
 - æåçãªå€åïŒã¿ã€ãã»ãŒããªãã©ã¯ãã£ã¹ãæ¡çšããã«ã¯ãéçºããŒã å ã§æåçãªå€åãå¿ èŠã«ãªãå ŽåããããŸããããã«ã¯ãã³ãŒãã®å質ãšãã¹ãã®éèŠãå«ãŸããŸãã
 
ã¿ã€ãã»ãŒããªå®è£ ã®å®äŸ
ã¿ã€ãã»ãŒãã®ååã¯ãã€ã³ã¿ãŒãããã€ã³ãã©ã®ããŸããŸãªåéã§ãŸããŸãé©çšãããŠããŸããæ¬¡ã«ããã€ãã®äŸã瀺ããŸãïŒ
- ãœãããŠã§ã¢å®çŸ©ãããã¯ãŒã¯ïŒSDNïŒïŒSDNã¯ããããã¯ãŒã¯ã®åäœãå¶åŸ¡ããããã«APIãšããŒã¿æ§é ã«å€§ããäŸåããŠããŸããã¿ã€ãã»ãŒããªAPIã䜿çšãããšããããã¯ãŒã¯æ§æãšãã©ãã£ãã¯ããªã·ãŒãæ£ããé©çšãããæ§æãã¹ãé²ãããããã¯ãŒã¯ã®èªååãåäžããŸããããšãã°ãPythonïŒMyPyã®ãããªéçåãã§ãã¯ã䜿çšïŒãOpenFlowã®ãããªãã¬ãŒã ã¯ãŒã¯ãªã©ã®åŒ·åãªåä»ãèšèªã®äœ¿çšããŸãã¯çµã¿èŸŒã¿ã®åã·ã¹ãã ïŒãããã¯ãŒã¯èªååããŒã«ã§äœ¿çšããããã®ãªã©ïŒãåãããããã¯ãŒã¯æ§æèšèªã®èšèšã¯ãã¿ã€ãã»ãŒããç¶æããã®ã«åœ¹ç«ã¡ãŸãã
 - APIèšèšïŒãããã¯ãŒã¯ç®¡çããã³å¶åŸ¡ã«äœ¿çšãããAPIã¯ããªã¯ãšã¹ããšã¬ã¹ãã³ã¹ãæåŸ ããã圢åŒã«æºæ ããããã«ãã¿ã€ãã»ãŒãã®ååã«åŸãå¿ èŠããããŸãã
 - ãããã¯ãŒã¯ç£èŠããŒã«ïŒç£èŠããŒã«ã¯ãã¿ã€ãã»ãŒããªããŒã¿æ§é ã䜿çšããŠã垯åå¹ ã®äœ¿çšçãé å»¶ããšã©ãŒçãªã©ã®ãããã¯ãŒã¯ã¡ããªãã¯ã衚ãããšãã§ããŸããããã«ãããããŒã¿ã®æŽåæ§ãä¿èšŒããããããã¯ãŒã¯åæã®ç²ŸåºŠãåäžããŸãã
 - ãã±ããåŠçïŒé«æ§èœãã±ããåŠçã·ã¹ãã ã¯ãã¿ã€ãã»ãŒããªææ³ã䜿çšããŠããããã¯ãŒã¯ãã±ãããå¹ççã«è§£æãæ€èšŒãããã³æäœããããšããããããŸãã匷åãªåã·ã¹ãã ãåããèšèªãããã±ããæäœã®æœè±¡åãæäŸããã©ã€ãã©ãªã䜿çšãããªã©ã®ææ³ã¯ããããã¡ãªãŒããŒãããŒããã®ä»ã®è匱æ§ãé²ãã®ã«åœ¹ç«ã¡ãŸãã
 - 忣ã·ã¹ãã ïŒåæ£ã·ã¹ãã ã¯ãããŸããŸãªã³ã³ããŒãã³ãéã®éä¿¡ã«äŸåããŠããŸããã¿ã€ãã»ãŒããªãããã³ã«ã¯ãã¡ãã»ãŒãžãæ£ãããã©ãŒãããããã³è§£éãããå°ççã«åæ£ããããããã¯ãŒã¯å šäœã§ã®ãšã©ãŒãšäžæŽåã®ãªã¹ã¯ãæå°éã«æããããã«äžå¯æ¬ ã§ãã
 
äŸïŒã¯ã©ãŠããããã€ããŒã¯ãã¿ã€ãã»ãŒããªã·ã¹ãã ãå®è£ ããŠãå€§èŠæš¡ãªãããã¯ãŒã¯ã管çããŸããGoãRustãªã©ã®åŒ·åãªåä»ãèšèªã䜿çšããŠãããã¯ãŒã¯ã€ã³ãã©ã¹ãã©ã¯ãã£ã³ã³ããŒãã³ããæ§ç¯ããããŒã¿ã®äžè²«æ§ã確ä¿ããæ§æãšã©ãŒãé²ããŸããå€ãã®å Žåã宣èšåèšèªã«åºã¥ããããã¯ãŒã¯æ§æç®¡çããŒã«ã¯ãã¿ã€ããã§ãã¯ã䜿çšããŠãæ§æãç©çããã€ã¹ãŸãã¯ä»®æ³ããã€ã¹ã«é©çšããåã«æ€èšŒããŸãã
ã°ããŒãã«ãªåœ±é¿ãšå°æ¥ã®ãã¬ã³ã
ã¿ã€ãã»ãŒããªã€ã³ã¿ãŒãããã€ã³ãã©ã¹ãã©ã¯ãã£ã¯ãã°ããŒãã«ãªæ¥ç¶ã«å€§ããªåœ±é¿ãäžããŸããã€ã³ã¿ãŒããããæé·ãšé²åãç¶ããã«ã€ããŠãã¿ã€ãã»ãŒãã¯ãŸããŸãéèŠã«ãªããŸããå°æ¥ã®ãã¬ã³ãã«ã¯ã次ã®ãã®ããããŸãïŒ
- ã¿ã€ãã»ãŒããªèšèªãšãã¬ãŒã ã¯ãŒã¯ã®æ¡çšã®å¢å ïŒRustãGoã®ãããªèšèªã¯ã匷åãªåã·ã¹ãã ãšããã©ãŒãã³ã¹ç¹æ§ã«ããããããã¯ãŒã¯ã€ã³ãã©ã¹ãã©ã¯ãã£ã®æ§ç¯ã§ããäžè¬çã«ãªããŸãã
 - ããæŽç·Žãããåã·ã¹ãã ïŒç ç©¶éçºã®åªåã¯ããŸããŸãè€éåãããããã¯ãŒã¯ã·ããªãªãåŠçããããã«ããã衚çŸåè±ãã§æè»ãªåã·ã¹ãã ãäœæããããšã«çŠç¹ãåœãŠãŸãã
 - ã¿ã€ããã§ãã¯ã®èªååïŒã¿ã€ããã§ãã¯ãšã³ãŒãçæãèªååããããã®ããŒã«ãããæ®åããã¿ã€ãã»ãŒããªã·ã¹ãã ãå®è£ ããããã«å¿ èŠãªæäœæ¥ã軜æžãããŸãã
 - DevOpsãã©ã¯ãã£ã¹ãšã®çµ±åïŒã¿ã€ãã»ãŒãã®ååã¯ãç¶ç¶çã€ã³ãã°ã¬ãŒã·ã§ã³ãšç¶ç¶çããªããªãŒïŒCI/CDïŒãªã©ã®DevOpsãã©ã¯ãã£ã¹ã«çµ±åããããã¹ããšå±éãèªååãããŸãã
 - ã»ãã¥ãªãã£ãžã®éç¹ïŒã¿ã€ãã»ãŒãã¯ãã€ã³ã¿ãŒãããã€ã³ãã©ã¹ãã©ã¯ãã£ãä¿è·ããããã®ããã«éèŠãªåŽé¢ã«ãªããŸãã
 
ã°ããŒãã«ãªåœ±é¿ïŒã°ããŒãã«ãããã¯ãŒã¯ã®çžäºæ¥ç¶ãé²ãã«ã€ããŠãå ç¢ã§ä¿¡é Œæ§ãé«ããå®å šãªã€ã³ãã©ã¹ãã©ã¯ãã£ã®å¿ èŠæ§ãæãéèŠã«ãªããŸããã¿ã€ãã»ãŒãã¯ããã®ç®çã«äžå¯æ¬ ã§ããããã¯ãåœééèãåœå¢ãè¶ããããŒã¿è»¢éãã°ããŒãã«eã³ããŒã¹ãªã©ã®åéã§ã¯ç¹ã«åœãŠã¯ãŸããŸããããã§ã¯ããããã¯ãŒã¯é害ã®çµæãé倧ã«ãªãå¯èœæ§ããããŸãã匷åãªåã·ã¹ãã ã¯ããããã®éèŠãªã·ã¹ãã ã®ä¿¡é Œæ§ãšã»ãã¥ãªãã£ã«è²¢ç®ããŸãã
ã¿ã€ãã»ãŒããªæ¥ç¶ã¿ã€ããå®è£ ããããã®ãã¹ããã©ã¯ãã£ã¹
ã¿ã€ãã»ãŒããªæ¥ç¶ã¿ã€ããæ£åžžã«å®è£ ããã«ã¯ã次ã®ãã¹ããã©ã¯ãã£ã¹ãæ€èšããŠãã ããïŒ
- æç¢ºãªèšèšããå§ããïŒã³ãŒããèšè¿°ããåã«ãæ£ç¢ºãªããŒã¿æ§é ãã€ã³ã¿ãŒãã§ãŒã¹ãããã³æ€èšŒã«ãŒã«ãå®çŸ©ããŸãã
 - é©åãªããŒã«ãéžæããïŒåŒ·åãªã¿ã€ããã§ãã¯æ©èœãæäŸããããã°ã©ãã³ã°èšèªãšãã¬ãŒã ã¯ãŒã¯ãéžæããŸãã
 - ã³ãŒãçæããŒã«ã䜿çšããïŒã³ãŒãçæã掻çšããŠãããŒã¿ã®è§£æãã·ãªã¢ã«åãããã³æ€èšŒã®ããã®ã³ãŒããèªåçã«çæããŸãã
 - 培åºçãªãã¹ããäœæããïŒå®è£ ãã¿ã€ãã»ãŒãã§ä¿¡é Œæ§ãé«ãããšã確èªããããã«ããŠããããã¹ããçµ±åãã¹ããããã³ã·ã¹ãã ãã¹ãã宿œããŸããããŸããŸãªã°ããŒãã«ã·ããªãªã§ãã¹ãããŸãã
 - å ç¢ãªãšã©ãŒåŠçãå®è£ ããïŒç¡å¹ãªããŒã¿ãšäºæããªãã€ãã³ããé©åã«åŠçããããã®ãšã©ãŒåŠçã¡ã«ããºã ãèšèšããŸãããã®ã³ã°ããã³ã¢ã©ãŒãã¡ã«ããºã ãå®è£ ããŸãã
 - ã¢ãžã¥ãŒã«åŒã¢ãŒããã¯ãã£ãæ¡çšããïŒä¿å®æ§ãšã¹ã±ãŒã©ããªãã£ãåäžãããããã«ãã¢ãžã¥ãŒã«æ¹åŒã§ã³ãŒããèšèšããŸãã
 - ã»ãã¥ãªãã£ãåªå ããïŒèšèšãå®è£ ãããã³ãã¹ããã§ãŒãºå šäœã§ã»ãã¥ãªãã£ã®èæ ®äºé ãçµ±åããŸãã
 - èªååãåãå ¥ããïŒã¿ã€ããã§ãã¯ãã³ãŒãçæãããã³ãã¹ããªã©ã®ã¿ã¹ã¯ãèªååããŠãå¹çãåäžããããã¥ãŒãã³ãšã©ãŒã®ãªã¹ã¯ã軜æžããŸãã
 - ç¶ç¶çãªæ¹åïŒã¿ã€ãå®çŸ©ãšã³ãŒãã宿çã«èŠçŽããæŽæ°ããŠãæ°ããªè åšã«å¯ŸåŠããæ©èœãæ¹åããŸãã
 - ããã¥ã¡ã³ãïŒã¿ã€ããã€ã³ã¿ãŒãã§ãŒã¹ãæ€èšŒã«ãŒã«ãããã³ç¹å®ã®å®è£ ã®è©³çްã説æããå æ¬çãªããã¥ã¡ã³ããç¶æããŸãã
 
äŸïŒå®éã®ã·ããªãªã§ãã¹ããã©ã¯ãã£ã¹ã瀺ãããã«ãã°ããŒãã«ã«åæ£ãããã³ã³ãã³ãé ä¿¡ãããã¯ãŒã¯ïŒCDNïŒã®æ§ç¯ãæ€èšããŠãã ãããåœåãã匷åãªåã·ã¹ãã ã䜿çšãããšã`URL`ã`RequestMethod`ïŒäŸïŒGETãPOSTãenumã§å®çŸ©ïŒã`HttpHeaders`ïŒåä»ãïŒã`OriginServer`ïŒIPã¢ãã¬ã¹ãšããŒãã§åä»ãïŒãªã©ã蚱容å¯èœãªãªã¯ãšã¹ããå³å¯ã«å®çŸ©ãã`ContentRequest`æ§é äœãå®çŸ©ããå ŽåããããŸããæ¬¡ã«ãã³ãŒãã¯ãã®æ§é äœã«å¯ŸããŠãã¹ãŠã®ãªã¯ãšã¹ããæ€èšŒããŸããæ€èšŒã¯ããšããžãµãŒããŒããã³CDNã€ã³ãã©ã¹ãã©ã¯ãã£å šäœã§è¡ãããŸããç¡å¹ãªãªã¯ãšã¹ããåŠçããããã«ãšã©ãŒåŠçãå®è£ ãããã¢ã©ãŒããããªã¬ãŒãããŸãããããã®ãã©ã¯ãã£ã¹ãéµå®ããããšã«ãããCDNã¯ä¿¡é Œæ§ã®åäžãã»ãã¥ãªãã£ã®åŒ·åãããã³ã¡ã³ããã³ã¹ã®å®¹æãã®æ©æµãåããã°ããŒãã«ã«é«éãã€å®å šãªã³ã³ãã³ãé ä¿¡ããŠãŒã¶ãŒã確å®ã«äœéšã§ããŸãã
çµè«
ã¿ã€ãã»ãŒããªã€ã³ã¿ãŒãããã€ã³ãã©ã¹ãã©ã¯ãã£ã¯ãä¿¡é Œæ§ãé«ããå®å šã§ãã¹ã±ãŒã©ãã«ãªã°ããŒãã«ãããã¯ãŒã¯ãæ§ç¯ããããã«äžå¯æ¬ ã§ããã¿ã€ãã»ãŒããªæ¥ç¶ã¿ã€ããæ éã«å®è£ ããããšã«ãããçµç¹ã¯ãšã©ãŒãé²ããã»ãã¥ãªãã£ã匷åããããã©ãŒãã³ã¹ãåäžãããããšãã§ããŸãããã®ã¢ãããŒãã¯ã仿¥ã®ãŸããŸãè€éåããçžäºæ¥ç¶ãããããžã¿ã«äžçã§éåžžã«éèŠã§ãããã¯ãããžãŒã®ç¶ç¶çãªé²åããœãããŠã§ã¢å®çŸ©ãããã¯ãŒã¯ïŒSDNïŒã®åºçŸãããã³ã°ããŒãã«ã«åæ£ãããã·ã¹ãã ã®æé·ã«ãããã¿ã€ãã»ãŒãã®ååã®æ¡çšããããŸã§ä»¥äžã«éèŠã«ãªã£ãŠããŸãããããã®ååãåãå ¥ããããšã«ãããéçºè ãšãããã¯ãŒã¯ãšã³ãžãã¢ã¯ããã¹ãŠã®äººã«ãšã£ãŠããå埩åãããå®å šãªã€ã³ã¿ãŒããããæ§ç¯ã§ããŸãã
ã€ã³ã¿ãŒããããæé·ãç¶ãããã®ã€ã³ãã©ã¹ãã©ã¯ãã£ã«å¯ŸããèŠæ±ãé«ãŸãã«ã€ããŠãã¿ã€ãã»ãŒããå®è£ ããå©ç¹ããŸããŸãæããã«ãªããŸããã»ãã¥ãªãã£è åšã®è»œæžãããã¡ã³ããã³ã¹ã®ç°¡çŽ åãå šäœçãªããã©ãŒãã³ã¹ã®åäžãŸã§ãã¿ã€ãã»ãŒãã®ååã¯ãä¿¡é Œæ§ãé«ãå®å šãªã°ããŒãã«ãããã¯ãŒã¯ã確ä¿ããããã«äžå¯æ¬ ã§ãããããã®æŠå¿µãçè§£ããåãå ¥ããããšã«ãããçµç¹ãšå人ã¯ãããå ç¢ã§ä¿¡é Œã§ããããžã¿ã«æªæ¥ã«è²¢ç®ã§ããŸãã